package com.example.micro_property_springboot.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import jakarta.validation.constraints.NotNull;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 盘点明细表（对应数据库表asset_check_item）
 */
@Data
@TableName("asset_check_item")
public class AssetCheckItem {

    @TableId(type = IdType.AUTO)
    @NotNull(message = "明细ID不能为空")
    private Long id; // 明细ID

    @TableField("plan_id")
    @NotNull(message = "盘点计划ID不能为空")
    private Long planId; // 盘点计划ID

    @TableField("asset_id")
    @NotNull(message = "资产ID不能为空")
    private Long assetId; // 资产ID

    @TableField("check_status")
    @NotNull(message = "盘点状态不能为空")
    private String checkStatus; // 盘点状态（UNCHECKED-未盘点，CHECKED-已盘点）

    @TableField("check_time")
    @NotNull(message = "盘点时间不能为空")
    private LocalDateTime checkTime; // 盘点时间

    @TableField("check_user_id")
    @NotNull(message = "盘点人ID不能为空")
    private Long checkUserId; // 盘点人ID

    @TableField("remark")
    @NotNull(message = "备注不能为空")
    private String remark; // 备注

    @TableField("create_time")
    @NotNull(message = "创建时间不能为空")
    private LocalDateTime createTime; // 创建时间
}
